Även om denna funktion kan vara mycket användbar kan den också vara mycket
farlig. Därför fungerar detta bara på lokala sidor (med en URL som börjar
med file://localhost/
) och om rutan
Tillåt skalkommandon i länkar
är kryssad.
x-aweb:command/ditt_DOS-kommando
Om användaren klickar på länken kommer ditt_DOS-kommando att utföras. Utmatningen från kommandot visas i ett konsollfönster som automatiskt öppnas, såvida du inte anger ett annan utmatningssätt i ditt kommando.
Eftersom kompatibelt HTML-läge
avslutar en URL vid ett mellanslag, se till att du har ersatt alla
mellanslag i kommandot med " 
". Annars kommer
dina kommandon inte att fungera om användaren har valt kompatibelt
HTML-läge.
Exempel: <a
href="x-aweb:command/dir sys: all">visa
låda</a>
låter användaren köra kommandot
dir sys: all
genom att klicka på orden "visa
låda
".
OBS: DOS-kommandot exekveras i ett separat skal med den aktuella lådan satt till samma som den för AWeb. Du bör bara använda absoluta sökvägar i DOS-kommandot, då resultatet annars kan bero på vilken låda som råkade vara aktuell då du startade AWeb.
x-aweb:rexx/ditt_ARexx-program
Om användaren klickar på länken kommer ditt_ARexx-program att startas med ARexx-porten för det aktuella fönstret satt som den förvalda kommandoporten.
ACTION="x-aweb:command/ditt_kommando"
i
<FORM>
-märket för att utföra kommandot när användaren
skickar formuläret. På samma sätt kan du inkludera attributet
ACTION="x-aweb:rexx/ditt_program"
för att köra ett
ARexx-program.
METHOD=GET
(det förvalda) konverteras
formulärdatan till argument i AmigaDOS-format: fältnamnet används som
argumentnamn (nyckelord) och fältvärdet används som argumentvärde. Värdet
kommer att få citattecken runt sig, med escape-,
radmatnings- och citattecken angivna på det sätt som krävs
av AmigaDOS.
Obs: flaggor (/S) kan inte anges på detta sätt. Du kan använda ett skript istället, som exemplet nedan visar. Parametrar för ARexx-program skickas på samma sätt som för DOS-program. Argumentsträngen innehåller namnet, ett likhetstecken, och det citerade värdet för varje formulärfält. Se det andra exemplet nedan för hur dessa argument kan tolkas.
Observera att den totala längden för alla argument som skickas på det här sättet är begränsad till cirka 4000 tecken; resten trunkeras. Om ditt formulär kan generera längre argument, använd METHOD=POST istället.
METHOD=POST
skapas en temporär fil. Kommandot
eller ARexx-programmet kommer att anropas med exakt ett argument,
filnamnet. Den temporära filen innehåller meddelandet på samma sätt som det
skulle ha skickas till en HTTP-server. Det betyder i korthet att:
&
.
+
.
%XX
, där XX
är den hexadecimala
representationen för tecknet i fråga.
OPEN
för
detta. Om du använder samma namn på din fil flera gånger, i olika syften,
se till att du lägger till flaggan RELOAD
för att förhindra
att AWeb använder föregående version av dokumentet igen (som kan finnas i
fickminnet).
Detta fungerar naturligtvis bättre från ARexx-program än från DOS-skript. I
DOS-skript kan du inte ta reda på vilken ARexx-port som
OPEN
-kommandot skall skickas till.
Sys:
i ett
separat konsollfönster: visa låda.